package com.ruoyi.project.naming.kangxistat.service.impl;

import java.util.List;

import com.ruoyi.common.utils.JsonUtil;
import com.ruoyi.framework.aspectj.lang.annotation.DataSource;
import com.ruoyi.framework.aspectj.lang.enums.DataSourceType;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.project.naming.kangxistat.mapper.KangxiStatMapper;
import com.ruoyi.project.naming.kangxistat.domain.KangxiStat;
import com.ruoyi.project.naming.kangxistat.service.IKangxiStatService;
import com.ruoyi.common.utils.text.Convert;

/**
 * 康熙统计Service业务层处理
 *
 * @author shixiangwen
 * @date 2025-02-13
 */
@Service
@DataSource(DataSourceType.DICT)
public class KangxiStatServiceImpl implements IKangxiStatService {
    @Autowired
    private KangxiStatMapper kangxiStatMapper;

    /**
     * 查询康熙统计
     *
     * @param id 康熙统计主键
     * @return 康熙统计
     */
    @Override
    public KangxiStat selectKangxiStatById(Long id) {
        return kangxiStatMapper.selectKangxiStatById(id);
    }

    /**
     * 查询康熙统计列表
     *
     * @param kangxiStat 康熙统计
     * @return 康熙统计
     */
    @Override
    public List<KangxiStat> selectKangxiStatList(KangxiStat kangxiStat) {
        List<KangxiStat> list = kangxiStatMapper.selectKangxiStatList(kangxiStat);
        list.forEach(item -> {
           item.setMap(JsonUtil.toMap(item.getStat(), Integer.class));
        });
        return list;
    }

    /**
     * 新增康熙统计
     *
     * @param kangxiStat 康熙统计
     * @return 结果
     */
    @Override
    public int insertKangxiStat(KangxiStat kangxiStat) {
        return kangxiStatMapper.insertKangxiStat(kangxiStat);
    }

    /**
     * 修改康熙统计
     *
     * @param kangxiStat 康熙统计
     * @return 结果
     */
    @Override
    public int updateKangxiStat(KangxiStat kangxiStat) {
        return kangxiStatMapper.updateKangxiStat(kangxiStat);
    }

    /**
     * 批量删除康熙统计
     *
     * @param ids 需要删除的康熙统计主键
     * @return 结果
     */
    @Override
    public int deleteKangxiStatByIds(String ids) {
        return kangxiStatMapper.deleteKangxiStatByIds(Convert.toStrArray(ids));
    }

    /**
     * 删除康熙统计信息
     *
     * @param id 康熙统计主键
     * @return 结果
     */
    @Override
    public int deleteKangxiStatById(Long id) {
        return kangxiStatMapper.deleteKangxiStatById(id);
    }
}
